package main

import "fmt"

func main() {
	//创建一个5行5列的数组
	arr := make([][]int, 5)
	for i := 0; i < 5; i++ {
		arr[i] = make([]int, 5)
	}
	//填入数字
	count := 1
	startCol := 0
	endCol := 4
	startRow := 0
	endRow := 4
	for count <= 25 {
		// 从左到右输入
		for i := startCol; i <= endCol; i++ {
			arr[startRow][i] = count
			count++
		}
		startRow++
		// 从上到下输入
		for i := startRow; i <= endRow; i++ {
			arr[i][endCol] = count
			count++
		}
		endCol--
		// 从右到左输入
		for i := endCol; i >= startCol; i-- {
			arr[endRow][i] = count
			count++
		}
		endRow--
		// 从下到上输入
		for i := endRow; i >= startRow; i-- {
			arr[i][startCol] = count
			count++
		}
		startCol++
	}
	//打印数组
	for i := 0; i < 5; i++ {
		for j := 0; j < 5; j++ {
			fmt.Printf("%2d ", arr[i][j])
		}
		fmt.Printf("\n")
	}
}	
